package com.zhitan.ems.alarm.entity;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zhitan.ems.common.annotation.Excel;
import com.zhitan.ems.framework.core.mp.base.BaseEntity;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 
 * 
 * @author zhitan
 * 
 * @date 2025-09-26 21:25:31
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("ems_alarm_records")
public class AlarmRecordsEntity extends BaseEntity {
	private static final long serialVersionUID = 1L;
	/**
	 * 
	 */
	@TableId
	@Excel(name = "ID")
	private Long id;
	/**
	 * 提醒类型 0 点位数据 10 设备报警 11 groupId
	 */
	@ApiModelProperty("提醒类型 0 点位数据 10 设备报警 11 groupId ")
	@Excel(name = "提醒类型 0 点位数据 10 设备报警 11 groupId ")
	private Integer alarmKind;
	@Excel(name = "地址")
	private String address;
	/**
	 * 
	 */
	@Excel(name = "分类")
	private String alarmLevel;
	/**
	 * 
	 */
	@Excel(name = "报警消息")
	private String alarmMessage;
	/**
	 * 
	 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "报警时间", width = 30, dateFormat = "yyyy-MM-dd")
	private Date alarmTime;
	/**
	 * 
	 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
	private Date createAt;
	/**
	 * 
	 */
	@Excel(name = "报警分类型")
	private String dataType;
	@Excel(name = "设备ID")
	private String deviceId;
	@Excel(name = "设备编码")
	private String deviceCode;
	@Excel(name = "设备名称")
	private String deviceName;
	private String dataCode;
	private String dataFormCode;
	/**
	 * 
	 */
	@Excel(name = "最大阈值")
	private Double maxThreshold;
	/**
	 * 
	 */
	@Excel(name = "最小阈值")
	private Double minThreshold;
	/**
	 * 
	 */
	@Excel(name = "协议")
	private String protocol;
	/**
	 * 
	 */
	@Excel(name = "备注")
	private String remarks;
	/**
	 * 
	 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "解决问题时间", width = 30, dateFormat = "yyyy-MM-dd")
	private Date resolvedTime;
	/**
	 * 
	 */
	@Excel(name = "规则")
	private String ruleId;
	/**
	 * 
	 */
	@Excel(name = "报警状态：0 未处理 1处理中 2 已处理")
	private Integer status;
	/**
	 * 
	 */
	@Excel(name = "触发值")
	private String triggerValue;
	/**
	 * 
	 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
	private Date updateAt;
	/**
	 * 
	 */
	private Long groupId;
	/**
	 * 
	 */
	@Excel(name = "分组名称")
	private String groupName;
	
	
	@Excel(name = "确认人")
	private String acknowledgedBy;
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "确认时间", width = 30, dateFormat = "yyyy-MM-dd")
	private Date acknowledgedTime;
	@Excel(name = "确认内容")
	private String acknowledgedContent;

}